<?php
class M_barangkeluar extends CI_Model{
	
	function getlist($end,$start,$filter){
		$sql = "SELECT barangkeluar_id, barangkeluar_date, barangkeluar_ket
				FROM t_barangkeluar";
		$query = $this->db->query($sql);
		$total = $query->num_rows();
		
		if ($filter<>""){
				$sql .=preg_match("/WHERE/i",$sql)? " AND ":" WHERE ";
				$sql .= " (lower(barangkeluar_ket) LIKE '%".addslashes(strtolower($filter))."%' )";
		}
		
		$sql .= " ORDER BY barangkeluar_id ";
		$limit = $sql." LIMIT ".$start.", ".$end;
		$query = $this->db->query($limit);
		$arr = array();
		$i = 0;
		foreach($query->result() as $q){
			
			$sql = "SELECT
					t.barangkeluardet_id, t.t_barangkeluar_id , t.m_barang_id, t.barangkeluardet_qty ,
					t.barangkeluardet_ket , b.m_satuan_id , s.satuan_nama
				FROM
					t_barangkeluardet as t
				LEFT JOIN m_barang as b
				ON t.m_barang_id = b.barang_id
				LEFT JOIN m_satuan as s
				ON b.m_satuan_id = s.satuan_id
				WHERE
					t_barangkeluar_id = ".$q->barangkeluar_id;
			$query = $this->db->query($sql);
			$result = $query->result();
			$barangkeluar_grid = json_encode($result);
			
			$arr[$i] = $q;
			$arr[$i]->barangkeluar_grid = $barangkeluar_grid;
			$i++;
		}
	
		$final = array(
			'total'   => $total,
			'results' => $arr
		);
		return json_encode($final);
	}
	
	function save($data){
		extract($data);
		$data_submit = array(
			'barangkeluar_date' => $barangkeluar_date,
			'barangkeluar_ket'   => $barangkeluar_ket
		);
		$this->db->insert('t_barangkeluar',$data_submit);
		$t_barangkeluar_id = $this->db->insert_id();
		for($i = 0; $i < count($barangkeluar_grid[0]); $i++){
			$data_submit = array(
				't_barangkeluar_id' =>$t_barangkeluar_id ,
				'm_barang_id' => $barangkeluar_grid[0][$i],
				'barangkeluardet_qty' => $barangkeluar_grid[1][$i],
				'barangkeluardet_ket' => $barangkeluar_grid[3][$i]
			);
			$this->db->insert('t_barangkeluardet',$data_submit);
		}
		echo 1;
	}
	
	function update($data){
		extract($data);
		$data_submit = array(
			'barangkeluar_date' => $barangkeluar_date,
			'barangkeluar_ket'   => $barangkeluar_ket
		);
		$this->db->where('barangkeluar_id',$barangkeluar_id);
		$this->db->update('t_barangkeluar',$data_submit);
		$t_barangkeluar_id = $barangkeluar_id;
		
		$this->db->where('t_barangkeluar_id',$t_barangkeluar_id);
		$this->db->delete('t_barangkeluardet');
		
		for($i = 0; $i < count($barangkeluar_grid[0]); $i++){
			$data_submit = array(
				't_barangkeluar_id' =>$t_barangkeluar_id ,
				'm_barang_id' => $barangkeluar_grid[0][$i],
				'barangkeluardet_qty' => $barangkeluar_grid[1][$i],
				'barangkeluardet_ket' => $barangkeluar_grid[3][$i]
			);
			$this->db->insert('t_barangkeluardet',$data_submit);
		}
		echo 1;
	}
	
	function delete($data){
		$sql = "DELETE FROM t_barangkeluar WHERE barangkeluar_id = ".$data;
		$this->db->query($sql);
		echo 1;
	}

}